package com.koron.tool.mapper;

import com.koron.tool.bean.ToolBean;
import com.koron.tool.bean.ToolStatisticsBean;
import com.koron.tool.bean.ToolStatisticsQuery;

import java.util.List;

/**
 * @Author: liaodf
 * @Date: 2021/10/25 11:04
 */
public interface ToolAccountStatisticsMapper {
    /**
     * 获取库房下的统计数据
     *
     * @param query
     * @return
     */
    ToolStatisticsBean getStatistics(ToolStatisticsQuery query);

    /**
     * 查询库房下的工具总数详情
     *
     * @param query
     * @return
     */
    List<ToolBean> getTotalList(ToolStatisticsQuery query);

    /**
     * 查询库房下的工具总数
     * @return
     */
    Long getWarehouseCount(ToolStatisticsQuery query);

    /**
     * 查询库房下的工具在库数
     *
     * @param query
     * @return
     */
    Integer getInWarehouseCount(ToolStatisticsQuery query);

    /**
     * 查询库房下的工具在库数详情
     *
     * @param query
     * @return
     */
    List<ToolBean> getInWarehouseList(ToolStatisticsQuery query);

    /**
     * 查询库房下的工具出库数详情
     *
     * @param query
     * @return
     */
    List<ToolBean> getOutWarehouseList(ToolStatisticsQuery query);

    /**
     * 查询库房下的工具待检验数
     * @param query
     * @return
     */
    Integer getToInspectionCount(ToolStatisticsQuery query);

    /**
     * 查询库房下的工具待检验数详情
     * @param query
     * @return
     */
    List<ToolBean> getToInspectionList(ToolStatisticsQuery query);

    /**
     * 查询库房下的工具报废数详情
     * @param query
     * @return
     */
    List<ToolBean> getScrapList(ToolStatisticsQuery query);

}
